package com.example.config;

// 引入Swagger和Spring相关的包

import io.swagger.v3.oas.models.info.Contact;
import io.swagger.v3.oas.models.info.Info;
import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

//访问地址：http://localhost:9090/swagger-ui/index.html
//访问地址：http://localhost:9090/doc.html


// 声明这是一个Spring配置类
@Configuration
public class SwaggerConfig {

    // 定义一个Bean，用于配置公开的API文档分组
    @Bean
    public GroupedOpenApi publicApi() {
        return GroupedOpenApi.builder()
                .addOpenApiCustomizer(openApi -> openApi.setInfo(info())) // 自定义OpenAPI信息
                .group("public") // 设置分组名称为"public"
                .packagesToScan("com.example.controller") // 扫描指定包下的控制器以生成API文档
                .build();
    }
    private Info info(){
        return new Info()
                .title("人员信息管理系统") // 设置API标题
                .description("第一个管理系统") // 设置API描述
                .contact(new Contact().name("罗昌超、田景臣、何全平").email("@qq.com").url("www.ynu.edu.cn")).version("v1.0")
                .version("1.0"); // 设置API版本

    }

}